﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DSVISUAL
{

    [System.Runtime.InteropServices.StructLayoutAttribute(System.Runtime.InteropServices.LayoutKind.Sequential)]
    public struct in_addr
    {

        /// Anonymous_cf7219a7_561f_4650_8ae4_fbd5695fe221
        public Anonymous_cf7219a7_561f_4650_8ae4_fbd5695fe221 S_un;
    }

    [System.Runtime.InteropServices.StructLayoutAttribute(System.Runtime.InteropServices.LayoutKind.Explicit)]
    public struct Anonymous_cf7219a7_561f_4650_8ae4_fbd5695fe221
    {

        /// Anonymous_8ee52dbc_a992_4853_a328_103fc9181176
        [System.Runtime.InteropServices.FieldOffsetAttribute(0)]
        public Anonymous_8ee52dbc_a992_4853_a328_103fc9181176 S_un_b;

        /// Anonymous_63fe3feb_0017_41da_8c7f_24da3f99f4a8
        [System.Runtime.InteropServices.FieldOffsetAttribute(0)]
        public Anonymous_63fe3feb_0017_41da_8c7f_24da3f99f4a8 S_un_w;

        /// u_long->unsigned int
        [System.Runtime.InteropServices.FieldOffsetAttribute(0)]
        public uint S_addr;
    }

    [System.Runtime.InteropServices.StructLayoutAttribute(System.Runtime.InteropServices.LayoutKind.Sequential)]
    public struct Anonymous_8ee52dbc_a992_4853_a328_103fc9181176
    {

        /// u_char->unsigned char
        public byte s_b1;

        /// u_char->unsigned char
        public byte s_b2;

        /// u_char->unsigned char
        public byte s_b3;

        /// u_char->unsigned char
        public byte s_b4;
    }

    [System.Runtime.InteropServices.StructLayoutAttribute(System.Runtime.InteropServices.LayoutKind.Sequential)]
    public struct Anonymous_63fe3feb_0017_41da_8c7f_24da3f99f4a8
    {
        /// u_short->unsigned short
        public ushort s_w1;

        /// u_short->unsigned short
        public ushort s_w2;
    }

    public partial class NativeMethods
    {
        /// Return Type: LONG->int
        ///S: PCTSTR->LPCWSTR->WCHAR*
        ///Strict: BOOLEAN->BYTE->unsigned char
        ///Terminator: LPCTSTR*
        ///Addr: IN_ADDR*
        [System.Runtime.InteropServices.DllImportAttribute("Ntdll.dll", EntryPoint = "RtlIpv4StringToAddressA", CallingConvention = System.Runtime.InteropServices.CallingConvention.StdCall)]
        public static extern int RtlIpv4StringToAddress([System.Runtime.InteropServices.InAttribute()] [System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.LPWStr)] string S, byte Strict, ref System.IntPtr Terminator, ref in_addr Addr);
    }

}
